﻿/*
 * MediaFrameSink.h
 *
 *  Created on: 2016年3月16日
 *      Author: terry
 */

#ifndef MEDIAFRAMESINK_H_
#define MEDIAFRAMESINK_H_

#include "MFrame.h"


namespace av
{


class MediaFrameSink
{
public:
	virtual ~MediaFrameSink() {}

    /**
     * 接收媒体流格式
     * @param format
     * @return void
     */
    virtual void onMediaFrameFormat(const MFormat& format) =0;

    /**
     * 接收解码帧
     * @param frame 不能改写帧内容
     */
    virtual void onMediaFrame(MFrame& frame) =0;

    /**
     * 媒体流结束
     * @return void
     */
    virtual void onMediaFrameEnd() =0;

};



} /* namespace av */

#endif /* MEDIAFRAMESINK_H_ */
